#include "stdafx.h"
#include "CppUnitTest.h"

#include "../Geometry/Vector3d.h"
//#include "../Geometry/Vector3d.cpp"
//
#include "../Geometry/Line3d.h"
//
//#include "../Geometry/Point3d.h"


using Geometry::Vector3d;
using Geometry::Line3d;
using Geometry::Point3d;

using namespace Microsoft::VisualStudio::CppUnitTestFramework;

namespace GeometryTests
  {
  TEST_CLASS(UnitTestPoint3d)
    {
    public:
      TEST_METHOD(ShouldCountDeterminant)
        {
        Point3d pt1(1, 0, 0);
        Point3d pt2(0, 1, 0);
        Point3d pt3(0, 0, 1);
        double exp_1 = 1;
        double act_1 = Geometry::determinant(pt1, pt2, pt3);

        Assert::AreEqual(exp_1, act_1);

        Point3d pt4(2, 3, 1);
        Point3d pt5(-2, 2, 2);
        Point3d pt6(4, 5, 2);
        double exp_2 = 6.0;
        double act_2 = Geometry::determinant(pt4, pt5, pt6);

        Assert::AreEqual(exp_2, act_2);


        }



    };
  }